#ifndef __CK_CHECK_MODEL_MANAGER_MYSQL_H__
#define __CK_CHECK_MODEL_MANAGER_MYSQL_H__

#include "ckCheckModelManager.h"

namespace ck
{
	class CheckModelManagerMySQL :	public CheckModelManager
	{
	public:
		CheckModelManagerMySQL();
		virtual ~CheckModelManagerMySQL();

	protected:
		virtual void		BuildGetModelsSQL(char* szSQL, size_t nSize);
		virtual void		BuildGetModelSQL(char* szSQL, size_t nSize, const char* szName);
		virtual void		BuildGetModelSQL(char* szSQL, size_t nSize, z_uint32 nCode);
		virtual void		BuildInsertModelSQL(char* szSQL, size_t nSize, z_uint32 code, const char* szCode, const char* szName, z_uint32	productCode, const char* szProduct, const char* szDscription);

		virtual void		BuildModelAddItemSQL(char* szSQL, size_t nSize, z_uint32 nModelID, z_uint32 nCheckItemCode);
		virtual void		BuildModelRemoveItemSQL(char* szSQL, size_t nSize, z_uint32 nModelID, z_uint32 nCheckItemCode);
		virtual void		BuildModelHasItemSQL(char* szSQL, size_t nSize, z_uint32 nModelID, z_uint32 nCheckItemCode);

		virtual void		BuildGetCheckItemCodeSQL(char* szSQL, size_t nSize, z_uint32 nModelCode);
		virtual void		BuildGetOperatorsSQL(char* szSQL, size_t nSize, z_uint32 nModelCode, z_uint32 nCheckItemCode);
	};

}

#endif //__CK_CHECK_MODEL_MANAGER_MYSQL_H__
